<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
    <script>
       const s = Symbol(1)
       console.log(s,typeof s);
    // Symbol.for 
    // 和 Symbol() 不同的是，用 Symbol.for() 方法创建的的 symbol 会被放入一个全局 symbol 注册表中。Symbol.for() 并不是每次都会创建一个新的 symbol，它会首先检查给定的 key 是否已经在注册表中了。假如是，则会直接返回上次存储的那个。否则，它会再新建一个。
    let s4 = Symbol.for('nnn')
    let s5 =Symbol.for('nnn')
    console.log(s4 === s5 );//nnn已存在 则复用 所以为true 

    // Symbol不能与其他数据进行运算
    let rs1 = s + 100//报错
    let rs2 = s > 100//报错
    let rs3 = s < 100//报错
    let rs4 = s + s  //报错 同样也不能与自己进行运算
    // 回顾七个js原始数据类型
    // String  Boolean  Number null  undefined   Object   Symbol


    </script>
</body>
</html>